Method and an electronic device for playback of video

ABSTRACT

The present disclosure relates to streaming of media content. In one example embodiment, an electronic device for playing video content may comprise a user interface, a processor and a memory. The memory may comprise computer program code, which, when run in the processor causes the electronic device to receive a first request to play first video content associated with a first video stream at the user interface, and in response to receiving the first request, pre-buffer data related to the first video stream; while pre-buffering this data and before playing the first video content at the user interface; display (at the user interface) a still image corresponding to a portion of the first video content in a first video tile at a first size; and re-size the first size to a second size such that a zooming-out effect of the displayed still image is provided.

CLAIM OF PRIORITY

This application claims the benefit of priority to U.S. ProvisionalPatent Application No. 62/072,153, titled “A METHOD AND AN ELECTRONICDEVICE FOR PLAYBACK OF VIDEO”, filed Oct. 29, 2014, which application isherein incorporated by reference.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent file or records, but otherwise reserves all copyrightrights whatsoever.

TECHNICAL FIELD

The present disclosure generally relates to the providing of mediacontent, and more particularly the providing of video content. Inparticular, the embodiments of the present invention relate to methodsof operating an electronic device and corresponding electronic devicesfor playback of video content.

BACKGROUND

As computer technology has improved, the digital media industry hasevolved greatly in recent years. Users are able to use electronicdevices (e.g., smart phones, tablet computers, etc.) to consume music,video and other forms of media content. For instance, users can listento audio content (e.g., music) or watch video content on a variety ofelectronic devices. At the same time, advances in network technologyhave increased the speed and reliability with which information can betransmitted over computer networks. It is therefore possible for usersto stream media content over computer networks as needed, or on demand,rather than transmitting a complete file in physical media (such as CDor DVD, or downloading the entire file) before consuming the mediacontent.

SUMMARY

Despite the advances in computer network speed and reliability, someexisting solutions for streaming media content may involve relativelylong loading times. This may e.g. be particularly true whentransitioning, or switching, between media streams on a wireless network(or other low bandwidth network) that does not have sufficient bandwidthto simultaneously receive high bandwidth versions of large number ofmedia streams. For example, if a user attempts to scan through severalvideo streams (e.g., channel surfing through various televisionchannels), the user may experience frequent breaks to load content. Inturn, this may degrade the user experience. It is in view of theseconsiderations and others that the various embodiments of the presentinvention have been made.

Accordingly, it is a general object of the embodiments of the presentinvention to allow for the required loading times and, at the same time,provide an uninterrupted user experience when watching video content.

According to a first aspect, a method of operating an electronic devicefor playback of video content is provided. The method according to thefirst aspect comprises: receiving a first request to play first videocontent associated with a first video stream at a user interface of theelectronic device, in response to receiving the first request,pre-buffering data related to the first video stream; whilepre-buffering said data and before playing the first video content atthe user interface; displaying, at the user interface, a still imagecorresponding to a portion of the first video content in a first videotile at a first size, and adjusting the first size to a second size toprovide an effect of one of a zooming-out or zooming-in of the displayedstill image.

According to a second aspect, a method of operating an electronic devicefor playback of video content is provided. The method according to thesecond aspect comprises: receiving a first request to play first videocontent associated with a first video stream at a user interface of theelectronic device, wherein the first video stream corresponds to a firstchannel of a sequence of several channels; in response to receiving thefirst request, playing the first video content associated with the firstvideo stream at the user interface; while playing the first videocontent at the user interface, receiving a second request to play secondvideo content associated with a second video stream at the userinterface, wherein the second video stream corresponds to a secondchannel of the sequence of several channels; in response to receivingthe second request, pre-buffering data related to the second videostream; while pre-buffering said data and before playing the secondvideo content at the user interface; displaying, at the user interface,a still image corresponding to a portion of the second video content ina second video tile at a first size, and adjusting the first size to asecond size to provide an effect of one of a zooming-out or zooming-inof the displayed still image.

According to a third aspect, there is provided an electronic device forplayback of video content which is configured to execute, or otherwiseperform, the method of the first aspect.

According to a fourth aspect, there is provided an electronic device forplayback of video content which is configured to execute, or otherwiseperform, the method of the second aspect.

According to a fifth aspect, there is provided a computer readablestorage medium encoded with instructions that, when executed on aprocessor, performs the method according to any one or both of the firstand second aspects.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other aspects, features and advantages will be apparent andelucidated from the following description of various embodiments,reference being made to the accompanying drawings, in which:

FIG. 1 illustrates a system for playback of video content, in accordancewith an embodiment.

FIG. 2 illustrates an example of a playback of video content, inaccordance with an embodiment.

FIGS. 3A-3D illustrate an example of a user interface which supportsplayback of video content in accordance with an embodiment.

FIGS. 4A-4G illustrate another example of a user interface whichsupports playback of video content in accordance with an embodiment.

FIG. 5 illustrates a flowchart of a method according to an embodiment.

FIG. 6 illustrates a flowchart of a method according to anotherembodiment.

FIG. 7 illustrates an example implementation of an embodiment of anelectronic device shown in FIGS. 1-4.

FIG. 8 illustrates an example of a computer-readable medium, inaccordance with an embodiment.

DETAILED DESCRIPTION

The present invention will now be described more fully hereinafter. Theinvention may, however, be embodied in many different forms and shouldnot be construed as limited to the embodiments set forth herein; rather,these embodiments are provided by way of example so that this disclosurewill be thorough and complete, and will fully convey the scope of theinvention to those persons skilled in the art. Like reference numbersrefer to like elements throughout the description.

As described above, some existing solutions for streaming media contentmay involve relatively long loading times. This may, e.g., beparticularly true when transitioning, or switching, between mediastreams on a wireless network (or other low bandwidth network) that doesnot have sufficient bandwidth to simultaneously receive high bandwidthversions of large number of media streams. For example, if a userattempts to scan through several video streams (e.g., channel surfingthrough various television channels), the user may experience frequentbreaks to load content. This may degrade the user experience.

It is therefore a general object of at least some of the embodimentsdescribed herein to allow for the required loading times and,simultaneously, provide for an uninterrupted user experience, i.e. auser experience that (from the user's perception) seems immediate.

To address this, in accordance with an embodiment, described herein isan electronic device and a method of operating the electronic device forplayback of video content. A request to play first video contentassociated with a video stream at a user interface of the electronicdevice is received by the electronic device. In response to receivingthe first request, the electronic device pre-buffers data related to thefirst video stream. While this data is being pre-buffered by theelectronic device and before the first video content is played at theuser interface of the electronic device, a still image corresponding toa portion of the first video content is displayed at the user interface.The still image is displayed in a first video tile at a first size and,furthermore, this first size is adjusted to a second size to provide aneffect of one of a zooming-out or zooming-in of the displayed stillimage.

The provision of a zooming-out effect (or, zooming-in effect) of a stillimage corresponding to a portion of the first video content allow forthe required loading times and, simultaneously, allow for anuninterrupted user experience. The described approach recognizes that azooming-out appearance of the still image has the psychological effectthat the users will perceive the zoomed-out appearance of the stillimage as if the video content is being played back at the user interfaceimmediately. In other words, from the user's perception the playing backof the video content seems immediate. Also, since sufficient data may bepre-buffered while the zoomed-out appearance of the still image isdisplayed unnecessary breaks, or interruptions, to load video contentmay be avoided and so, the user experience when consuming video contentmay be improved.

FIG. 1 illustrates a system 100 for playback of media content, inaccordance with an example embodiment. The system 100 may comprise anelectronic device 200 and a computer system 300 operating as a mediaserver. The electronic device 200 may be communicatively connectable tothe computer system 300 via a network 400, such as the Internet, as isconventional and known in the existing art. As can be seen in FIG. 1,only a single electronic device 200 and a single computer system 300 areshown. However, the computer system 300 may support the simultaneous useof multiple electronic devices, and/or the electronic device 200 cansimultaneously access video content at multiple computer systems.

In the following description, the media content will be exemplified tobe video content so as not to obscure the description of the embodimentsdisclosed herein with unnecessary detail. This should, however, not beinterpreted as limiting the scope of the various embodiments of theinvention.

As shown in FIG. 1, the electronic device 200 may be used for theplayback of video content, which is provided by the computer system 300.The electronic device 200 may be a mobile telephone, such as a smartphone. Alternatively, the electronic device 200 may be a tabletcomputer. In yet other embodiments, the electronic device 200 may be anyother electronic device capable of playback of media content such as,for example, one of the electronic devices of the following group: apersonal computer, a laptop, and a mobile electronic device (e.g. ahandheld entertainment device, a digital media player, or other mediadevice).

The electronic device 200 may include one or several physical computerresources, or hardware resources 210. Likewise, the computer system 300operating as a media server may include one or several physical computerresources, or hardware resources 316.

The computer system 300 may include an operating system or otherprocessing system which supports execution of a software application310, including a media server application 312 which may be used, forexample, to stream video content. A media stream service 320 may be usedto buffer video content, for streaming to one or more video streams 322,324, 326. A media application interface 314 may receive requests fromelectronic devices 200 or other systems, to retrieve video content 331from the computer system 300.

Video content or items 331 may be provided, for example, within adatabase or repository, or may be received by the computer system 300from another source (not shown).

This another source (not shown) may be external to the computer system300, i.e. it may be located remotely from the computer system 300.

A media streaming logic 330 may be used to retrieve or otherwise accessthe video content 331 in response to requests from electronic devices200 or other systems, and populate the video stream service with streams322, 324, 326 of corresponding video content data 323, 325, 327 that maybe returned to the requesting electronic device 200.

In some embodiments, the electronic device 200 comprises a userinterface 230, which is adapted to display or otherwise provide a visualarray of video options 232, for example as a two-dimensional grid, alist, or other visual array format, and determine a user input. Eachvideo option in the visual array of video options 232 correspond to arespective video stream 322, 324, 326. Examples of various visual arrays232 are described in further detail below.

Selecting a particular video option within the visual array 232 may beused, or otherwise interpreted, as a request or instruction to the mediaserver application 312 to stream or otherwise return a correspondingparticular item of video content. For example, in accordance with someembodiments, the software application 310 at the computer system 300 maybe used to stream or otherwise communicate video content to theelectronic device 200, wherein the user interface 230 at the electronicdevice 200 is adapted to display a plurality of video options thatcorrespond to respective video streams.

In accordance with some embodiments, the electronic device 200 may alsoinclude a media playback application 220, together with a playback logic222, pre-buffering logic 223, and a zoom function 224, which may be usedto control the playback of video content that is received from the mediaserver application 312, for playback by the electronic device 200, asdescribed in further detail below. The pre-buffering logic 223 enables aportion of each video content, or item, to be pre-buffered at theelectronic device 200, as decided by the playback logic 222. Forexample, while video streams are being prepared for playback, theirrelated video content may be pre-buffered at the same time, allowing fora playback experience that, from the user's perception, seems immediate.

A user 500 may interact 11 with the user interface 230 and issuerequests, for example the playing of a selected video content on theelectronic device 200. The user's selection of a particular video option(or, stream) may be communicated 12 to the media server application 312,via the media application interface 314. The media server application312 may then be instructed 13 to stream corresponding video content 13,including one or more streams of video content data 323, 325, 327, andsubsequently stream 14 or otherwise communicate the, e.g., selectedvideo, to the user's electronic device 200. In accordance with someembodiments, pre-buffering requests from the electronic device 200 mayalso be communicated to the media server application 312 via the mediaapplication interface 314. At the electronic device 200, in response tothe user's interaction with the user interface 230, the media playbackapplication 220, including the playback logic 222, may play 10 therequested video content to the user 500, for example by playing back avideo on the electronic device 200, as described in further detailbelow.

FIG. 2 illustrates an example of a visual appearance of the visual arrayof video options/streams 232 displayed at the user interface 230 of theelectronic device 200 of FIG. 1. As illustrated in FIG. 2, in theexample shown therein, four video streams A (601), B (602), C (603) andD (604) are visualized as video tiles 650. As used herein, a video tile650 means a region of the user interface 230 that displays video contentcorresponding to a video stream 601, 602, 603, 604 (e.g., a still imageof video content, playing the video content, or the like). Each videotile 650 has a respective video option center 651 (illustrated in thefigure as a point) and a video selection area 652. Depending on theparticular implementation, the video selection area 652 may be acomparatively smaller area compared with the whole area of the videotile 650. However, in some implementations the whole video tile areamake up the video selection area 652, i.e. the video tile area equalsthe video selection area 652.

In accordance with an embodiment, a plurality of video options/streamsmay e.g. be represented at the user interface 230 as a two-dimensionalvisual array. The plurality of video options may e.g. be provided as anarray of video tiles 650. Each video tile 650 may be associated with aparticular visualization identifying a represented video or channel(e.g. a television channel). The particular visualization identifyingthe represented video, or channel, may for example be a still image ofthe represented video, or channel. In some embodiments, supplementaryforms of visualization may be used to complement the above-mentionedstill image of the represented video or channel. For example, a text(such as a title of the represented video or television channel) oranother label may be provided in a semi-transparent manner such that thetext appears as text overlaying the still image.

While a selected point, or region, is moved within the grid of videooptions (i.e. video streams A (601), B (602), C (603), D (604)), thevisualization, or appearance, of those video options that are proximateto the selected point or region may optionally be modified, for exampleby varying their respective opacity. For example, in accordance with anembodiment, the opacity of a particular point or region, including theclosest video tile and/or proximate video tiles may be modified torender the closest or proximate video options to a selected point orregion in a more visible manner than other (not selected, or notproximate) video tiles.

In accordance with an embodiment, a user 500 may provide input as a userselection of a point or region 12. As will be appreciated, the userinterface 140 may advantageously be a touch-sensitive user interface,which recognizes input in the form of a touch, for example the positionof a user's finger (or a stylus) upon the user interface 230, todetermine the selected point or region within the visual array of videooptions 232. Similarly, the user interface 230 may determine theselected point or region 12 as it is being moved, in response to a userinput, within the visual array of video options 232. Although atouch-sensitive user interface is described as particularlyadvantageous, those skilled in the art will appreciate that other userinterfaces are possible too. For example, in the case of a mouse-basedinterface, the input can be provided by a mouse-down event.Alternatively, the user interface could be a motion detection basedinterface. Motion detection based interfaces detects a motion of anobject (e.g. movement of a user's hand) and converts the detected motioninto input useable by the electronic device 200.

FIGS. 3A-3D illustrate an electronic device 200 with an exemplary userinterface which supports playback of video content, in accordance withan embodiment. In an example embodiment, such as in the exampleillustrated in FIGS. 3A-3D, upon a user selection 12 of video stream I(609), the electronic device 200 receives a request, or instruction, toplay video content associated with the video stream I (609) at the userinterface 230 of the electronic device 200. In response to receivingthis request, the pre-buffering logic 223 of the playback logic 222starts pre-buffering data related to the selected video stream, i.e.video stream I (609) in this example. With reference to FIG. 3C, whilethe above-mentioned data is being pre-buffered and before the selectedvideo content is played at the user interface 230, a still imagecorresponding to a portion of the selected video content (i.e. a portionof video stream I (609) in this example) is displayed in a video tile650 at a first size 660. Also, this first size 660 is adjusted orre-sized to another, second, size 661 by means of zoom function 224 suchthat a zooming-out effect (or, alternatively a zooming-in effect) of thedisplayed still image is provided. In accordance with an embodiment,during a zooming-out, while the image is reduced in size, it can besimultaneously padded with additional image portions so that itcontinues to fill the video tile area; similarly, during a zooming-in,while the image is increased in size, it can be simultaneously cropped,so that it continues to fill the video tile area (662). The zoomed-outversion of the still image is thus displayed within the video tile 650while data related to the selected video stream 609 is beingpre-buffered.

As mentioned hereinabove, the still image may correspond to a portion ofthe selected video content. This portion of the selected video contentmay be pre-defined for the selected video content, such that a certainportion of the video content is always selected upon a user selection ofthe same video content. In other words, the selection of still image maybe static. Alternatively, the portion of the selected video content maybe dynamically selected. For example, if the video content is associatedwith a live video stream of (e.g., a live soccer game) it may be moreuser-friendly if the still image corresponds to a portion of the livevideo stream. In some embodiments, it may be pre-configured that aportion which appears at a certain timing of the video stream should beselected for the still image.

According to some embodiments, a timer or timer function may be used.For example, such timer or timer function may be set to a pre-bufferingtime T_(pre-buffering) upon a user's selection 12 of a certain videostream, e.g. video stream I (609) in the example. The pre-buffering timeT_(pre-buffering) may be pre-determined. The exact time of thepre-buffering time T_(pre-buffering) should preferably be tested anevaluated depending on the implementation, e.g. in view of user demandsand/or system requirements. Advantageously, the pre-buffering timeT_(pre-buffering) should be selected to be sufficiently long in orderfor the electronic device 200 to be capable of beginning to play back aselected video stream without any unnecessary breaks. To this end, thepre-buffering time T_(pre-buffering) may be 0,5 seconds, 1 second, 2seconds, 3 seconds, 5 seconds, 7 seconds, 10 seconds, 15 seconds, 20seconds, 30 seconds, etc. In preferred embodiments, the pre-bufferingtime T_(pre-buffering) less or equal to 5 seconds, i.e.T_(pre-buffering)≦5 seconds. The still image is displayed during thetime the timer or timer function is running. More particularly, thezoom-out appearance (or, zoom-in appearance) of the still image, asillustrated in FIG. 3C, is displayed at the user interface 230 of theelectronic device 200 until the pre-buffering time T_(pre-buffering) setby the timer expires. With reference to FIG. 3D, in response to thepre-buffering time T_(pre-buffering) set by the timer expiring, theelectronic device 200 is configured to cease to display the zoomed-out(or, zoomed-in) appearance of the still image. Upon timer expiry, videocontent associated with the selected video stream (i.e., video stream I(609) in this example) begins to play at the user interface 230 of theelectronic device. In other words, the electronic device 200 begins toplay back the video content related to the selected video stream. Byawaiting the play back of video content related to the selected videostream until the timer or timer function expires may contribute to animproved user experience.

Typically, a still image requires a short, or a very short, loading timeto be displayed at a user interface 230. However, the playback of videocontent requires comparatively (much) longer loading times before it canbe played back at the user interface 230. Using the streaming deliverytechnique proposed hereinabove, while the video stream (which typicallyrequires the comparatively longer loading times) is being prepared forplayback, its related video content may be pre-buffered, and thisrelated video content may be used for displaying the still image (whichrequires a shorter loading time). This allows for a playback experiencethat, from the user's perception, seems immediate. During the pre-buffertime T_(pre-buffering) the user 500 will experience a still image of therelated video content and as soon as sufficient video content data hasbeen loaded to begin playing back the video content, the still-imagetransitions into the video content being played back, see FIG. 3D. Inother words, the described streaming delivery technique allows for therequired loading time for playing the video content and, simultaneously,provide for an uninterrupted user experience, i.e. a user experiencethat (from the user's perception) seems immediate.

The described approach recognizes that that the zooming-out appearance(or, zooming-in appearance) of the still image allows for a smoothtransition to the selected video content. The user may be presented withenough information about the selected video content so as to confirm hisor her selection and, at the same time, the zooming-out appearance (or,zooming-in appearance) of the still image has the psychological effectthat the user perceives the displayed zoomed-out (or, zoomed-in) stillimage as if the selected video content is already being played back whenthe still-image is being displayed. The smooth transition to theselected video content contributes to a playback experience that, fromthe user's perception, seems immediate and uninterrupted.

FIGS. 4A-4F illustrate an electronic device 200 with an exemplary userinterface (e.g. a touch-sensitive user interface) which supportsplayback of video content, in accordance with another embodiment. Inthis example, upon a user selection 12 of video stream A (601) theelectronic device 200 receives a request, or instruction, to play videocontent associated with video stream A (601) at the user interface 230of the electronic device 200. The electronic device 200 may thus beginplaying back the requested video content (see FIG. 4A). In someembodiments, the video stream A (601) corresponds to a channel (e.g. atelevision channel) of a sequence of several channels. As isschematically illustrated in FIG. 4A, the video content associated withvideo stream A (601) may be played in a video tile 650. With furtherreference to FIG. 4B, a user may e.g. perform a left-to-right swipegesture such that a first portion of the user interface 230 that is leftto the user's hand displays the first video stream A (601) while asecond portion of the user interface 230 that is right to the user'shand displays another, e.g. adjacent, video stream B (602). This allowsfor a “swipe effect” transition where one video stream (i.e. videostream A, in this example) is swiped away to reveal another video stream(i.e. video stream B, in this example). As can be seen in FIG. 4B, thevideo content associated with video stream A (601) may still be playingat the user interface 230 during the left-to-right swipe gesture. Forexample, the video content associated with the video stream A (601) maycontinue to play as it slides off the display of the user interface(e.g. as shown in FIG. 4B). As will be appreciated, the above-mentionedleft-to-right swipe gesture may be interpreted by the electronic device200 to be a request, or instruction, to play video content associatedwith a video stream B (602) at the user interface 230. In someembodiments, the video stream B (602) corresponds to still anotherchannel (e.g. a television channel) of the earlier-mentioned sequence ofseveral channels. In response to receiving the above-mentioned request,i.e. upon a user selection 12 by means of the left-to-right swipegesture, the pre-buffering logic 223 of the playback logic 222 startspre-buffering data related to the selected video stream, i.e. videostream B (602) in this example. With further reference to FIG. 4C, whilepre-buffering said data and before playing the video content associatedwith the selected video stream B (602) at the user interface 230, astill image corresponding to a portion of the second video content isdisplayed in a video tile 650 at a first size 660. Also, this first size660 is adjusted, or otherwise re-sized, to a second size by means ofzoom function 224 such that a zooming-out effect (or, alternatively azooming-in effect) of the displayed still image is provided. Inaccordance with an embodiment, during a zooming-out, while the image isreduced in size, it can be simultaneously padded with additional imageportions so that it continues to fill the video tile area; similarly,during a zooming-in, while the image is increased in size, it can besimultaneously cropped, so that it continues to fill the video tilearea. The zoomed-out version of the still image is thus displayed withinthe video tile 650 while data related to the selected video stream B(602) is being pre-buffered.

Again, the still image may correspond to a certain portion of theselected video content. This portion of the selected video content maybe pre-defined for the selected video content, such that a certainportion of the video content is always selected upon a user selection ofthe video content in question. In other words, the selection of stillimage may be static. Alternatively, the portion of the selected videocontent may be dynamically selected. For example, if the video contentis associated with a live video stream of (e.g., a live soccer game) itmay be more user-friendly if the still image corresponds to a portion ofthe live video stream. In some embodiments, it may be pre-configuredthat a certain portion which appears at a certain timing of the videostream should be selected for the still image.

Similar to the embodiment described in connection with FIGS. 3A-3D, atimer or timer function may be used. For example, a timer or timerfunction may be set to a pre-buffering time T_(pre-buffering) upon theuser's selection 12 of a certain video stream, e.g. video stream B (602)in the example. The pre-buffering time T_(pre-buffering) may bepre-determined. The exact time of the pre-buffering timeT_(pre-buffering) should preferably be tested an evaluated depending onthe implementation, e.g. in view of user demands and/or systemrequirements. Advantageously, the pre-buffering time T_(pre-buffering)should be selected to be sufficiently long in order for the electronicdevice 200 to be capable of beginning to play back a selected videostream without any unnecessary breaks. To this end, the pre-bufferingtime T_(pre-buffering) may be 0,5 seconds, 1 second, 2 seconds, 3seconds, 5 seconds, 7 seconds, 10 seconds, 15 seconds, 20 seconds, 30seconds, etc. In preferred embodiments, the pre-buffering timeT_(pre-buffering) is less or equal to 10 seconds, i.e.T_(pre-buffering)≦5 seconds. The still image is displayed during thetime the timer or timer function is running. More particularly, thezoom-out appearance (or, zoom-in appearance) of the still image, asillustrated in FIG. 4C, is displayed at the user interface 230 of theelectronic device 200 until the pre-buffering time T_(pre-buffering) setby the timer expires. With reference to FIG. 4D, in response to thepre-buffering time T_(pre-buffering) set by the timer expiring, theelectronic device 200 is configured to cease to display the zoomed-out(or, zoomed-in) appearance of the still image. Upon timer expiry, videocontent associated with the selected video stream (i.e., video stream B(602) in this example) begins to play within the video tile at the userinterface 230 of the electronic device 200. In other words, theelectronic device 200 begins to play back the video content related tothe selected video stream. Again, by awaiting the play back of videocontent related to the selected video stream until the timer or timerfunction expires may contribute to an improved user experience.

Typically, a still image requires a relatively short loading time to bedisplayed at a user interface 230. However, the playback of videocontent requires comparatively longer loading times before it can beplayed back at the user interface 230 without interruptions. Using thestreaming delivery technique proposed hereinabove, while the videostream is being prepared for playback, its related video content may bepre-buffered at the same time, and this related video content may beused for displaying the still image. This allows for a playbackexperience that, from the user's perception, seems immediate. During thepre-buffer time T_(pre-buffering) the user 500 will experience a stillimage of the related video content and as soon as sufficient videocontent data has been loaded to begin playing back the video content,the still-image transitions into the video content being played back,see FIG. 4D. In other words, the described streaming delivery techniqueallows for the required loading time for playing the video content and,simultaneously, provide for an uninterrupted user experience, e.g. auser experience that (from the user's perception) seems immediate. Tothis end, the described approach recognizes that a zooming-outappearance (or, zooming-in appearance) of a still image of a portion ofthe selected video content may be particularly advantageous. Moreparticularly, the described approach recognizes that the zooming-outappearance (or, zooming-in appearance) of the still image allows for asmooth transition to the selected video content. The user may bepresented with enough information about the selected video content so asto confirm his or her selection and, at the same time, the zooming-outappearance (or, zooming-in appearance) of the still image has thepsychological effect that the user perceives the displayed zoomed-out(or, zoomed-in) still image as if the selected video content is alreadybeing played back when the still-image is being displayed. In turn, thissmooth transition to the selected video content contributes to theplayback experience that, from the user's perception, seems immediateand uninterrupted when switching between video streams such as, forexample, when channel surfing through various television channels.

Turning now to FIGS. 4E-4G, optional further user interactions with theuser interface are depicted. More particularly, FIGS. 4E-4G illustrateexemplary user interfaces for switching, or otherwise transitioning,between adjacent or non-adjacent playing back of video content (e.g.video channels or television channels) according to some embodiments.

While video content associated with video stream B (602) is being playedback at the user interface 230, a first contact denoted 12′ and a secondcontact denoted 12″ are detected. In some embodiments, the electronicdevice 200 detects the first contact 12′ and the second contact 12″moving closer together, as is shown in FIG. 4F. In some embodiments, theelectronic device 200 causes the user interface to zoom out (e.g., asshown in FIG. 4G) to display one or more video tiles (e.g., video tilescomprising video stream A (601), video stream B (602), video stream C(603), video stream D (604), etcetera). In one example embodiment, allthe video tiles (e.g., video tiles corresponding to video tilescomprising video stream A (601), video stream B (602), video stream C(603), video stream D (604), etcetera) are represented in an orderedlist of video tiles and when display of a video tile (e.g., video streamB (602) as shown in FIG. 4G) zooms out, the plurality of video tiles (asis also shown in FIG. 4G) are shown to the user 500 in the order inwhich they are listed in the visual array of video options 232. In oneexample embodiment, when the plurality of video tiles are shown in theordered list as is illustrated in FIG. 4G. Optionally, the list may betraversed in response to a swipe gesture at the user interface 230. Theuser 500 may hence swipe, or scroll, through the list of video tiles andselect new video content associated with another video option/stream inaccordance with his or her preferences.

Example Methods

FIG. 5 illustrates an example method 1000 of operating an electronicdevice 200 for playback of video content according to embodimentsherein. The method comprises receiving 1001 a first request to playfirst video content associated with a first video stream (e.g. videostream I as in the example in FIGS. 3A-3D) at a user interface 230 ofthe electronic device 200. In response to receiving the first request,data related to the first video stream is pre-buffered 1002. While saiddata is being pre-buffered, and before the first video content is playedback 1004 at the user interface 230 of the electronic device 200, astill image corresponding to a portion of the first video content isdisplayed 1003 at the user interface. The still image is displayed 1003in a first video tile having a first size. Also, this first size of thevideo tile is adjusted, or otherwise re-sized, to a second size suchthat a zooming-out, or zooming-in, effect of the displayed still imageis provided.

In some embodiments, a timer or a timer function is set to apre-buffering time T_(pre-buffering) and the still image is displayed1003 until the pre-buffering time T_(pre-buffering) set by the timerexpires as described earlier in this disclosure. Again, thepre-buffering time T_(pre-buffering) may be pre-determined. In someembodiments, in response to the pre-buffering time T_(pre-buffering) setby the timer expiring, the method additionally comprises ceasing todisplay the still image and beginning to play 1004 the first videocontent associated with the first video stream at the user interface 230of the electronic device.

FIG. 6 illustrates another example method 2000 of operating anelectronic device 200 for playback of video content. The methodcomprises receiving 2001 a first request to play first video contentassociated with a first video stream at a user interface 230 of theelectronic device 200. The first video stream may correspond to a firstchannel (e.g., a video channel or a television channel) of a sequence ofseveral channels. In response to receiving the first request, the firstvideo content associated with the first video stream is played 2002 atthe user interface 230 of the electronic device 200. Optionally, thestep or action 2002 of playing back the first video content at the userinterface 230 may be preceded by the same or similar actions, or steps,as described with reference to FIG. 5, i.e. while data related to thefirst video stream is being pre-buffered a still image corresponding toa portion of the first video content is displayed in a first video tileat a first size and this first size is adjusted, or otherwise modified,to a second size such that a zooming-out, or zooming-in, effect of thedisplayed still image is provided until the video content begins toplay. While the first video content is played at the user interface (or,alternatively, after the first video content has been played), themethod additionally comprises receiving 2003 a second request to playsecond video content associated with a second video stream at the userinterface 230. The second video content is different from the firstvideo content and, likewise, the second video stream is different fromthe first video stream. The second video stream may correspond to asecond channel (e.g., a video channel or a television channel) of theearlier-mentioned sequence of several channels. In response to receivingthe second request, data related to the second video stream ispre-buffered 2004. While the data related to the second video stream isbeing pre-buffered, and before the second video content is played back2006 at the user interface 230 of the electronic device 200, a stillimage corresponding to a portion of the second video content isdisplayed 2005 at the user interface 230. The still image is displayed2005 in a first video tile having a first size. Also, this first size ofthe video tile is adjusted, or otherwise re-sized, to a second size suchthat a zooming-out, or zooming-in, effect of the displayed still imageis provided.

Although not schematically shown in FIG. 6, a timer or a timer functionmay be set to a pre-buffering time T_(pre-buffering) and the still imageis displayed 2005 until the pre-buffering time T_(pre-buffering) set bythe timer expires as described earlier in this disclosure. Again, thepre-buffering time T_(pre-buffering) may be pre-determined. In someembodiments, in response to the pre-buffering time T_(pre-buffering) setby the timer expiring, the method additionally comprises ceasing todisplay the still image and beginning to play 2006 the second videocontent associated with the second video stream at the user interface230 of the electronic device 200.

It should be appreciated that, in some embodiments (see e.g. FIG. 4B),the method may comprise playing 2002 the first video contentconcurrently with displaying 2005 the still image corresponding to saidportion of the second video content.

Example Implementations of Embodiments of the Electronic Device

FIG. 7 illustrates an electronic device 200, which is suitable forplayback of video content. The electronic device 200 is advantageously,but not necessarily, a tablet computer or a smart phone as describedearlier with reference to FIG. 1. The electronic device 200 isconfigured to execute, or otherwise perform, the methods describedthroughout this disclosure.

As is schematically illustrated in FIG. 7, the electronic device 200comprises hardware 210A-D. For example, the electronic device maycomprise one or more processors 210A and one or more memories 210B.Also, a communications interface 210C may be provided in order to allowthe electronic device 200 to communicate with other electronic devicesand/or servers 300, e.g. via a network 400 such as the Internet. To thisend, the communications interface 210C may comprise a transmitter (Tx)and a receiver (Rx). Alternatively, the communications interface 210Cmay comprise a transceiver (Tx/Rx) combining both transmission andreception capabilities. The communications interface 210C may include aradio frequency (RF) interface allowing the electronic device 200 tocommunicate with other devices and/or servers 300 through a radiofrequency band through the use of different radio frequency technologiessuch as LTE (Long Term Evolution), WCDMA (Wideband Code DivisionMultiple Access), any other cellular network standardized by the 3rdGeneration Partnership Project (3GPP), or any other wireless technologysuch as Wi-Fi, Bluetooth®, etcetera. The electronic device may furthercomprise a user interface 230, which may be comprised of a display and akeypad. Advantageously, the user interface is a touch-sensitive userinterface. As such, a display of the touch-sensitive user interface maybe a touch screen display upon which virtual keys may be displayed andoperated. Optionally, the electronic device 200 may additionallycomprise a timer 210D, or a timer function.

As described with reference to FIG. 1, the electronic device 200 maycomprise one or more applications, e.g. the media playback application220. The applications are sets of instructions (e.g., computer programcode) that when executed by the one or more processors 210A controls theoperation of the electronic device 200.

In some implementations, the one or more memories 210B stores computerprogram code, which, when run in the one or more processors 210A causesthe electronic device 200 to receive a first request to play first videocontent associated with a first video stream (e.g., video stream I (609)in the example of FIGS. 3A-3D) at the user interface 230, and inresponse to receiving the first request, pre-buffer data related to thefirst video stream (e.g., video stream I (609)); while pre-bufferingsaid data and before playing the first video content at the userinterface 230, display (at the user interface 230) a still imagecorresponding to a portion of the first video content in a first videotile at a first size, and adjust the first size to a second size suchthat a zooming-out, or zooming-in, effect of the displayed still imageis provided.

In some implementations, the one or more memories 210B may additionallystore computer program code, which, when run in the one or moreprocessors 210A causes the electronic device 200 to set the timer 210D(or, a timer function) to a pre-buffering time T_(pre-buffering) and todisplay the still image at the user interface 230 until thepre-buffering time T_(pre-buffering) set by the timer expires. Asdescribed earlier, the pre-buffering time T_(pre-buffering) may bepre-determined. In some implementations, the one or more memories 210Bmay store computer program code, which, when run in the one or moreprocessors 210A causes the electronic device 200 to, in response to thepre-buffering time T_(pre-buffering) set by the timer expiring: cease todisplay the still image; and begin to play the first video contentassociated with the first video stream at the user interface 230 of theelectronic device 200.

In still other implementations, the one or more memories 210B storescomputer program code, which, when run in the one or more processors210A causes the electronic device 200 to: receive a first request toplay first video content associated with a first video stream at theuser interface 230, wherein the first video stream corresponds to afirst channel of a sequence of several channels; in response toreceiving the first request, play the first video content associatedwith a first video stream at the user interface 230; while playing thefirst video content at the user interface 230 of the electronic device200 receive a second request to play second video content associatedwith a second video stream at the user interface 230, wherein the secondvideo stream corresponds to a second channel of the sequence of severalchannels; in response to receiving the second request, pre-buffer datarelated to the second video stream; while pre-buffering said data andbefore playing the second video content at the user interface 230;display, at the user interface, a still image corresponding to a portionof the second video content in a second video tile at a first size, andadjust the first size to a second size such that a zooming-in, orzooming-out, effect of the displayed still image is provided.

The one or more memories 210B may also store computer program code,which, when run in the one or more processors 210A causes the electronicdevice 200 to set the timer 210D to a pre-buffering timeT_(pre-buffering) and to display the still image until the bufferingtime T_(pre-buffering) set by the timer expires. The pre-buffering timeT_(pre-buffering) may be pre-determined. Advantageously, but notnecessarily, the one or more memories 210B may store computer programcode, which, when run in the one or more processors 210A causes theelectronic device 200 to, in response to the pre-buffering timeT_(pre-buffering) set by the timer expiring: cease to display the stillimage and begin to play the second video content associated with thesecond video stream at the user interface 230 of the electronic device200. In some implementations, the one or more memories 210B storecomputer program code, which, when run in the processor causes theelectronic device 200 to play the first video content concurrently withdisplaying the still image at the user interface 230.

Example Computer-readable Mediums

Turning now to FIG. 8, another embodiment will be briefly discussed.FIG. 8 shows an example of a computer-readable medium, in this examplein the form of a data disc 3000. In one embodiment the data disc 3000 isa magnetic data storage disc. The data disc 3000 is configured to carryinstructions 3001 that when loaded into a processor 210A of anelectronic device 200, executes a method or procedure according to theembodiments disclosed in this disclosure. The data disc 3000 is arrangedto be connected to or within and read by a reading device (not shown),for loading the instructions into the processor. One such example of areading device in combination with one (or several) data disc(s) 3000 isa hard drive. It should be noted that the computer-readable medium canalso be other mediums such as compact discs, digital video discs, flashmemories or other memory technologies commonly used. In such anembodiment the data disc 3000 is one type of a tangiblecomputer-readable medium. The instructions may alternatively bedownloaded to a computer data reading device, such as a computer orother electronic device 200 capable of reading computer coded data on acomputer-readable medium, by comprising the instructions in acomputer-readable signal (not shown) which is transmitted via a wireless(or wired) interface (for example via the Internet) to the computer datareading device for loading the instructions into a processor 210A of theelectronic device 200. In such an embodiment, the computer-readablesignal is one type of a non-tangible computer-readable medium.

In the detailed description hereinabove, for purposes of explanation andnot limitation, specific details are set forth in order to provide athorough understanding of various embodiments described in thisdisclosure. In some instances, detailed descriptions of well-knowndevices, components, circuits, and methods have been omitted so as notto obscure the description of the embodiments disclosed herein withunnecessary detail. All statements herein reciting principles, aspects,and embodiments disclosed herein, as well as specific examples thereof,are intended to encompass both structural and functional equivalentsthereof. Additionally, it is intended that such equivalents include bothcurrently known equivalents as well as equivalents developed in thefuture, i.e., any elements developed that perform the same function,regardless of structure. Thus, for example, it will be appreciated thatblock diagrams herein can represent conceptual views of illustrativecircuitry or other functional units embodying the principles of thedescribed embodiments. Similarly, it will be appreciated that any flowcharts and the like represent various processes which may besubstantially represented in computer readable medium and so executed bya computer or processor, whether or not such computer or processor isexplicitly shown. The functions of the various elements includingfunctional blocks, may be provided through the use of hardware such ascircuit hardware and/or hardware capable of executing software in theform of coded instructions stored on the above-mentioned computerreadable medium. Thus, such functions and illustrated functional blocksare to be understood as being either hardware-implemented and/orcomputer-implemented, and thus machine-implemented. In terms of hardwareimplementation, the functional blocks may include or encompass, withoutlimitation, digital signal processor (DSP) hardware, reduced instructionset processor, hardware (e.g., digital or analog) circuitry includingbut not limited to application specific integrated circuit(s) [ASIC],and/or field programmable gate array(s) (FPGA(s)), and (whereappropriate) state machines capable of performing such functions. Interms of computer implementation, a computer is generally understood tocomprise one or more processors or one or more controllers. Whenprovided by a computer or processor or controller, the functions may beprovided by a single dedicated computer or processor or controller, by asingle shared computer or processor or controller, or by a plurality ofindividual computers or processors or controllers, some of which may beshared or distributed. Moreover, use of the term “processor” or“controller” may also be construed to refer to other hardware capable ofperforming such functions and/or executing software, such as the examplehardware recited above.

Modifications and other variants of the described embodiments will cometo mind to one skilled in the art having benefit of the teachingspresented in the foregoing description and associated drawings.Therefore, it is to be understood that the embodiments are not limitedto the specific example embodiments described in this disclosure andthat modifications and other variants are intended to be included withinthe scope of this disclosure. Furthermore, although specific terms maybe employed herein, they are used in a generic and descriptive senseonly and not for purposes of limitation. Therefore, a person skilled inthe art would recognize numerous variations to the described embodimentsthat would still fall within the scope of the appended claims. As usedherein, the terms “comprise/comprises” or “include/includes” do notexclude the presence of other elements or steps. Furthermore, althoughindividual features may be included in different claims, these maypossibly advantageously be combined, and the inclusion of differentclaims does not imply that a combination of features is not feasibleand/or advantageous. In addition, singular references do not exclude aplurality.

What is claimed is:
 1. A method of operating an electronic device forplayback of video content, the method comprising: displaying, at a userinterface of an electronic device, an array of video options, whereinthe electronic device includes a media playback application thatcontrols the playback of video content received from a media server, forplayback by the electronic device, wherein each video option correspondsto a respective video stream, and wherein selecting a particular videooption is interpreted as a request to the media server to return acorresponding particular item of video content; receiving, at the userinterface of the electronic device, a first request to play first videocontent associated with a first video stream at the user interface ofthe electronic device; in response to receiving the first request,pre-buffering data related to the first video stream, includingrequesting, by the electronic device, the data related to the firstvideo stream from the media server; while pre-buffering said data at theelectronic device, during a pre-buffering time, and before playing thefirst video content at the user interface, displaying, at the userinterface of the electronic device, a still image corresponding to aportion of the first video content, in a video tile at a first size; andadjusting a size of the displayed still image, from the first size to asecond size, including one of simultaneously padding or cropping thedisplayed still image so that it continues to fill an area of the videotile, to provide an effect of one of a zooming-out or zooming-in of thedisplayed still image; and upon expiration of the pre-buffering time,transitioning from displaying the displayed still image, to playing thefirst video content.
 2. The method of claim 1, further comprising:setting a timer to the pre-buffering time; and displaying the stillimage until the pre-buffering time set by the timer expires.
 3. Themethod of claim 2, wherein the pre-buffering time is pre-determined. 4.The method of claim 2, comprising, in response to the pre-buffering timeset by the timer expiring: ceasing to display the still image; andbeginning to play the first video content associated with the firstvideo stream at the user interface.
 5. The method of claim 3,comprising, in response to the pre-buffering time set by the timerexpiring: ceasing to display the still image; and beginning to play thefirst video content associated with the first video stream at the userinterface.
 6. A method of operating an electronic device for playback ofvideo content, the method comprising: displaying, at a user interface ofan electronic device, an array of video options, wherein the electronicdevice includes a media playback application that controls the playbackof video content received from a media server, for playback by theelectronic device, wherein each video option corresponds to a respectivevideo stream, and wherein selecting a particular video option isinterpreted as a request to the media server to return a correspondingparticular item of video content; receiving, at the user interface ofthe electronic device, a first request to play first video contentassociated with a first video stream at the user interface of theelectronic device, wherein the first video stream corresponds to a firstchannel of a sequence of several channels; in response to receiving thefirst request, playing the first video content associated with the firstvideo stream at the user interface; while playing the first videocontent at the user interface, receiving a second request to play secondvideo content associated with a second video stream at the userinterface, wherein the second video stream corresponds to a secondchannel of the sequence of several channels; in response to receivingthe second request, pre-buffering data related to the second videostream, including requesting, by the electronic device, the data relatedto the second video stream from the media server; while pre-bufferingsaid data at the electronic device, during a pre-buffering time, andbefore playing the second video content at the user interface,displaying, at the user interface of the electronic device, a stillimage corresponding to a portion of the second video content, in a videotile at a first size; and adjusting a size of the displayed still image,from the first size to a second size, including one of simultaneouslypadding or cropping the displayed still image so that it continues tofill an area of the video tile, to provide an effect of one of azooming-out or zooming-in of the displayed still image; and uponexpiration of the pre-buffering time, transitioning from displaying thedisplayed still image, to playing the second video content.
 7. Themethod of claim 6, further comprising: setting a timer to thepre-buffering time; and displaying the still image until thepre-buffering time set by the timer expires.
 8. The method of claim 7,wherein the buffering time is pre-determined.
 9. The method of claim 7,comprising, in response to the pre-buffering time set by the timerexpiring: ceasing to display the still image; and beginning to play thesecond video content associated with the second video stream at the userinterface.
 10. The method of claim 8, comprising, in response to thepre-buffering time set by the timer expiring: ceasing to display thestill image; and beginning to play the second video content associatedwith the second video stream at the user interface.
 11. The methodaccording to claim 7, comprising: playing the first video contentconcurrently with displaying the still image.
 12. An electronic devicefor playback of video content, the electronic device comprising: a userinterface; a processor; and a memory storing computer program code,which, when run in the processor causes the electronic device to:display, at the user interface of the electronic device, an array ofvideo options, wherein each video option corresponds to a respectivevideo stream, and wherein selecting a particular video option isinterpreted as a request to a media server to return a correspondingparticular item of video content; receive, at the user interface of theelectronic device, a first request to play first video contentassociated with a first video stream at the user interface of theelectronic device; and in response to receiving the first request,pre-buffer data related to the first video stream, including requesting,by the electronic device, the data related to the first video streamfrom the media server; while pre-buffering said data at the electronicdevice, during a pre-buffering time, and before playing the first videocontent at the user interface, display, at the user interface of theelectronic device, a still image corresponding to a portion of the firstvideo content, in a video tile at a first size; and adjust a size of thedisplayed still image, from the first size to a second size, includingone of simultaneously padding or cropping the displayed still image sothat it continues to fill an area of the video tile, to provide aneffect of one of a zooming-out or zooming-in of the displayed stillimage; and upon expiration of the pre-buffering time, transition fromdisplaying the displayed still image, to playing the requested firstvideo content.
 13. The electronic device of claim 12, wherein the memorystores computer program code, which, when run in the processor causesthe electronic device to set a timer to the pre-buffering time and todisplay the still image until the pre-buffering time set by the timerexpires.
 14. The electronic device of claim 13, wherein thepre-buffering time is pre-determined.
 15. The electronic device of claim13, wherein the memory stores computer program code, which, when run inthe processor causes the electronic device to, in response to thepre-buffering time set by the timer expiring: cease to display the stillimage; and begin to play the first video content associated with thefirst video stream at the user interface of the electronic device. 16.The electronic device of claim 14, wherein the memory stores computerprogram code, which, when run in the processor causes the electronicdevice to, in response to the pre-buffering time set by the timerexpiring: cease to display the still image; and begin to play the firstvideo content associated with the first video stream at the userinterface of the electronic device.
 17. An electronic device forplayback of video content, the electronic device comprising: a userinterface; a processor; and a memory storing computer program code,which, when run in the processor causes the electronic device to:display, at the user interface of the electronic device, an array ofvideo options, wherein each video option corresponds to a respectivevideo stream, and wherein selecting a particular video option isinterpreted as a request to a media server to return a correspondingparticular item of video content; receive, at the user interface of theelectronic device, a first request to play first video contentassociated with a first video stream at the user interface of theelectronic device, wherein the first video stream corresponds to a firstchannel of a sequence of several channels; in response to receiving thefirst request, play the first video content associated with a firstvideo stream at the user interface; while playing the first videocontent at the user interface of the electronic device, receive a secondrequest to play second video content associated with a second videostream at the user interface, wherein the second video streamcorresponds to a second channel of the sequence of several channels; inresponse to receiving the second request, pre-buffer data related to thesecond video stream, including requesting, by the electronic device, thedata related to the second video stream from the media server; whilepre-buffering said data at the electronic device, during a pre-bufferingtime, and before playing the second video content at the user interface,display, at the user interface of the electronic device, a still imagecorresponding to a portion of the second video content, in a video tileat a first size; and adjust a size of the displayed still image, fromthe first size to a second size, including one of simultaneously paddingor cropping the displayed still image so that it continues to fill anarea of the video tile, to provide an effect of one of a zooming-out orzooming-in of the displayed still image; and upon expiration of thepre-buffering time, transition from displaying the displayed stillimage, to playing the second video content.
 18. The electronic device ofclaim 17, wherein the memory stores computer program code, which, whenrun in the processor causes the electronic device to set a timer to thepre-buffering time and to display the still image until the bufferingtime set by the timer expires.
 19. The electronic device according toclaim 17, wherein the memory stores computer program code, which, whenrun in the processor causes the electronic device to play the firstvideo content concurrently with displaying the still image at the userinterface.
 20. The electronic device of claim 18, wherein thepre-buffering time is pre-determined.
 21. The electronic device of claim18, wherein the memory stores computer program code, which, when run inthe processor causes the electronic device to, in response to thepre-buffering time set by the timer expiring: cease to display the stillimage and begin to play the second video content associated with thesecond video stream at the user interface of the electronic device. 22.The electronic device of claim 20, wherein the memory stores computerprogram code, which, when run in the processor causes the electronicdevice to, in response to the pre-buffering time set by the timerexpiring: cease to display the still image and begin to play the secondvideo content associated with the second video stream at the userinterface of the electronic device.